/*
 * ListIterator.h
 *
 *  Created on: 2012-5-17
 *      Author: esf
 */

#ifndef LISTITERATOR_H_
#define LISTITERATOR_H_
#include "Iterator.h"
namespace collection {
template<class E>
class ListIterator: public virtual collection::Iterator<E> {
	virtual void add(E& e)=0;
	virtual bool hasPrevious()=0;
	virtual int nextIndex()=0;
	virtual E& previous()=0;
	virtual E& previousIndex()=0;
	virtual void set(E e)=0;
	virtual ~ListIterator() {
	}

};

} /* namespace collection */
#endif /* LISTITERATOR_H_ */
